package com.xf.sys.mapper;

import java.util.List;

import com.xf.sys.entity.SysMenu;

public interface SysMenuMapper {
	/**
	 * 新增菜单
	 * @param sysMenu
	 * @return
	 */
	public int insertSysMenu(SysMenu sysMenu);
	
	/**
	 * 删除菜单
	 * @param menuIds
	 * @return
	 */
	public int deleteSysMenu(Integer[] menuIds);

	/**
	 * 修改菜单
	 * @param sysMenu
	 * @return
	 */
	public int updateSysMenu(SysMenu sysMenu);

	/**
	 * 根据菜单ID查询菜单
	 * @param roleId
	 * @return
	 */
	public SysMenu selectSysMenuById(Integer menuId);

	/**
	 * 查询菜单集合
	 * @param sysMenu
	 * @return
	 */
	public List<SysMenu> selectSysMenuList(SysMenu sysMenu);
	
	/**
	 * 查询菜单信息并转化成json
	 * @param roleId
	 * @return
	 */
	public List<SysMenu> selectSysMenuRole(Integer roleId);
	
	/**
	 * 根据菜单名称查询菜单信息
	 * @param menuName
	 * @return
	 */
	public SysMenu selectSysMenuByName(String menuName);
	
	/**
	 * 查询需要删除菜单 是否有子菜单
	 * @param parentIds
	 * @return
	 */
	public List<SysMenu> selectSysMenuParentId(Integer[] parentIds);
	
	/**
	 * 根据父ID查询对应的最大子ID
	 * @param parentId
	 * @return
	 */
	public Integer selectMaxMenuId(Integer parentId);

}